1. Technical Field
The present invention relates to motor driving and control circuitry, and is more specifically related to an improved circuit and method for back electromotive force (BEMF) detection in a brushless motor.
2. Discussion of Related Art
Three-phase brushless DC motors have many uses, among which include both high speed and low speed applications. Conventional high speed applications include spindle motors for computer hard disk drivers, digital video disk (DVD) drivers, CD players, tape-drives for video recorders, and blowers for vacuum cleaners. Motor for high speed applications typically operate in a range from a few thousand rotations per minute (rpm""s) to 20,000 rpm""s, for example. Low speed applications include motors for farm and construction equipment, HVAC compressors, fuel pumps and the like. Motor for low speed applications typically operate in a range from less than a few hundred rpm""s to a few thousand rpm""s, for example. Compared to DC motors employing brushes, brushless DC motors enjoy reduced noise generation and improved reliability because no brushes need to be replaced due to wear.
FIG. 1 shows a cross-section of a typical brushless, DC motor 10. The motor 10 includes a permanent magnet rotor 12 and a stator 14 having a number of windings (A, B, C shown in FIG. 2). The windings are each formed in a plurality of slots 18. The motor 10 illustrated has the rotor 12 housed within the stator 14. The stator 14 may also be housed within the rotor 12. The rotor 12 is permanently magnetized, and turns to align its own magnetic flux with one generated by the windings.
Power to the motor 10 is often provided in a pulse width modulation (PWM) mode. The PWM mode is a nonlinear mode of power supply in which the power is switched on and off at a very high frequency in comparison to the angular velocity of the rotor. For example, typical switching frequencies may be in the range of 20 kHz. In a typical on-off cycle lasting about 50 xcexcs, there may be 40 xcexcs of xe2x80x9conxe2x80x9d time followed by 10 xcexcs of xe2x80x9coffxe2x80x9d time. Given the short duration of off times, current still flows through the motor windings so there is virtually no measurable slow down in the angular velocity of the rotor 12 during these periods. Accordingly, PWM mode provides a significant power savings advantage over modes in which power is continuously supplied.
In order to operate the motor 10, the flux existing in the stator 14 is controlled to be slightly in advance of the rotor 12 thereby continually pulling the rotor forward. Alternatively, the flux in the stator 14 may be controlled to be just behind the rotor 12, in which case the polarity is set such as to repel the rotor 12, thereby aiding rotation. Therefore, to optimize the efficiency of the motor 10, it is advantageous to monitor the position of the rotor 12 so that the flux in the stator 14 may be appropriately controlled and switched from one stage to the next. If the rotor 12 movement and the flux rotation should ever get out of synchronization, the rotor 12 may become less efficient, start to jitter or stop turning.
A conventional motor can be represented in circuit form as having three coils A, B, and C connected in a xe2x80x9cWyexe2x80x9d or xe2x80x9cYxe2x80x9d configuration, as shown by reference numeral 20 in FIG. 2, although a larger number of stator coils are often employed with multiple rotor poles. Typically, in such applications, eight-pole motors are used having twelve stator windings and four N-S magnetic sets on the rotor, resulting in four electrical cycles per revolution of the rotor. The stator coils, however, can be analyzed in terms of three xe2x80x9cYxe2x80x9d connected coils, connected in three sets of four coils, each physically separated by 90 degrees.
In operation, coils A, B and C are energized with a PWM drive signal that causes electromagnetic fields to develop about the coils. The resulting attraction/repulsion between the electromagnetic fields of the coils A, B, and C and the magnetic fields created by the magnets in the motor causes the rotor assembly of the motor to rotate.
The coils are energized in sequences to produce a current path through two coils of the xe2x80x9cYxe2x80x9d, with the third coil left floating (or in tristate), hereinafter floating coil FC. The sequences are arranged so that as the current paths are changed, or commutated, one of the coils of the current path is switched to float, and the previously floating coil is switched into the current path. The sequences are defined such that when the floating coil is switched into the current path, the direction of the current in the coil that was included in the prior current path is not changed. In this manner, six commutation sequences, or phases, are defined for each electrical cycle in a three phase motor, as shown in Table A.
When the motor is on, the rotation of the rotor induces a BEMF voltage in each of the windings of the motor. Such BEMF is represented by the Bemf voltage sources in FIG. 2. With respect to whichever phase is currently floating, the BEMF in that phase is monitored to determine when to advance in the communication sequence. More particularly, the BEMF in the floating coil is monitored to determine when it crosses zero at which point the position of the rotor is assumed to be known. The point at which the BEMF crosses zero is referred to as the xe2x80x9czero-crossingxe2x80x9d. Each time a zero-crossing is detected, the motor advances in its commutation sequence by 30 electrical degrees.
A conventional technique to measure the BEMF is to measure, during a floating period, the voltage at a coil tap (nodes Va, Vb, and Vc. in FIG. 2) for the floating coil. The measured voltage at the coil tap is presumed to be the BEMF. Accordingly, the coil tap voltage for the floating coil is monitored to detect zero-crossings at which times the commutation sequence is advanced. However, unless the center tap voltage VCT is zero, this BEMF calculation is not fully accurate.
Known methods of detecting BEFM include comparing the floating phase coil tap voltage with the center tap voltage, or a virtual center tap voltage configured by a resistor network. During the PWM-on and PWM-off states, the center tap voltage VCT is significantly deviated from zero. This generates high common mode noise. To offset the center tap voltage VCT for zero-crossing detection, voltage divider and filter circuits have been used. However, such voltage divider and filter circuits reduce the sensitivity of the circuits and delay zero-crossing detection.
A system and method of advancing the commutation sequence of a brushless DC motor is provided. The system and method advantageously monitors for zero crossing detections during PWM-off states. Because a PWM signal typically oscillates at a frequency significantly greater than the frequency at which the commutation sequence advances, zero-crossings which may happen to begin during a PWM-on state are still detectable during the PWM-off state with minimal delay. For example, the frequency of the PWM signal may be in the range of 20 kHz-100 kHz while the frequency at which the commutation sequence advances is typically on the order of 100 Hz. Accordingly, timely advancement of the commutation sequence is minimally impacted if the zero-crossing begins to occur during a PWM-on state. Further, as zero-crossing detection is accomplished during PWM-off states, the filter circuits previously used to offset the center tap voltage for zero-crossing detection are no longer needed, thereby avoiding reduced circuit sensitivity and delays in zero-crossing detection.
It has been observed that, especially in low speed and/or low voltage applications, variations in the center tap voltage VCT from zero during PWM-off states may have an adverse effect on zero-crossing detection. Variations in the center tap voltage VCT from a zero often occur during PWM-off states due to voltage drops across diodes in each coil of the motor. The diodes are typically connected in parallel with the switches which couple the coils to Vdc and ground. Accordingly, the present invention further provides a zero-crossing precondition circuit which adjusts for variances in BEMF measurements which occur due to a non-zero center tap voltage during PWM-off states.
According to an additional embodiment of the invention, the precondition circuitry additionally and/or alternatively includes sharpening circuitry for sharpening a coil tap voltage of the floating coil as the coil tap voltage approaches the zero-crossing. Again, particularly in low voltage and low speed motor applications, it has been observed that the coil tap voltage varies at a slow rate as it passes through the zero-crossing. Due to standard deviations/offsets in a comparator or other circuitry used to monitor for a zero-crossing (hereinafter xe2x80x9czero-crossing detection circuitryxe2x80x9d), a zero-crossing detection may be triggered either earlier or later than the actual zero-crossing. Accordingly, by sharpening the coil tap voltage in comparison to the standard deviations/offset of the zero-crossing detection circuitry, a more accurate zero-crossing detection is made possible.
Thus, according to one embodiment of the present invention, a driver circuit for a brushless motor is provided. The driver circuit includes a first coil coupled between a first coil tap and a center tap, a second coil coupled between a second coil tap and the center tap, and a third coil coupled between a third coil tap and the center tap. The driver circuit operating in a pulse width modulation (PWM) mode having a PWM-on state and a PWM-off state. The driver circuit includes a precondition circuit configured to receive, during a PWM-off period, a floating phase coil tap voltage from one of the first coil tap, the second coil tap and the third coil tap. The precondition circuit is configured to precondition the floating phase coil tap voltage for zero-crossing detection. The driver circuit further includes zero-crossing detection circuitry configured to receive the preconditioned floating phase coil tap voltage and determine when a zero-crossing event has occurred.
According to another embodiment of the present invention, a method for determining when to advance in a commutation sequence of a brushless DC motor is provided. The motor including a first phase having a first coil coupled between a first coil tap and a center tap, a second phase having a second coil coupled between a second coil tap and the center tap, and a third phase having a third coil coupled between a third coil tap and the center tap. The method includes the steps of: providing to the motor a pulse width modulation (PWM) signal having a PWM-on state and a PWM-off state; during the PWM-off state, supplying a floating phase coil-tap voltage from a floating one of the first, second and third phases of the motor to a preconditioning circuit; performing by the preconditioning circuit, preconditioning to the floating phase coil-tap voltage; monitoring for a zero-crossing of the preconditioned floating phase coil-tap voltage; and when a zero-crossing is detected, advancing a step in the commutation sequence of the motor.
According to yet another embodiment of the present invention, a motor is provided. The motor includes a plurality of coils, coupled together in one of a delta or wye configuration, each of the coils coupled at one end, through a respective coil tap, to both a source voltage and ground via selectively actuateable switches. Each of the switches includes a diode coupled in parallel with the respective switch. The motor includes a preconditioning circuit, the preconditioning circuit configured to adjust a voltage received from an associated one of the coil taps by an amount of voltage substantially equal to an amount of voltage by which the diodes offset a voltage at the center tap from zero, and a zero-crossing detection circuit coupled to the precondition circuit for receiving a signal output from the preconditioning circuit and monitoring the signal to detect a zero-crossing.